Флаги
O D I T S Z A P C ? ? ? * ? *
Команда:
AAA
Логика:
if (AL & 0Fh) > 9 or (AF = 1) then
AL = AL + 6
AH = AH + 1
AF = 1; CF = 1
else
AF = 0; CF = 0
AL = AL & 0Fh
Переводит число, записанное в младшем полубайте аккумулятора AL в число, представленное в неупакованном формате в двоично-десятичном коде (старший полубайт AL содержит нули).
| Операнды | Такт байты (слова) | Обращения | Байты | Пример |
| нет операндов | 4 | - | 1 | AAA |
Если младший полубайт в AL больше, чем 9 или дополнительный флаг переноса AF установлен (=1), то эта команда преобразовывает содержимое AL в его неупакованный двоично-десятичный код путем прибавления числа 6 к AL, увеличения AH на 1 и установки признака переноса CF и дополнительного признака переноса AF. Старший полубайт AL сбрасывается.
Примечания:
В неупакованном двоично-десятичном коде каждому байту соответствует одна цифра, и AH содержит более значащую цифру, а AL - менее значащую.